SetFactory("OpenCASCADE");
Point(1) = {0, 0, 0, 1.0};
Point(2) = {1, 0, 0, 1.0};
Point(3) = {1, 1, 0, 1.0};
Point(4) = {0, 1, 0, 1.0};
Point(5) = {0, 0, 1, 1.0};
Point(6) = {1, 0, 1, 1.0};
Point(7) = {1, 1, 1, 1.0};
Point(8) = {0, 1, 1, 1.0};
Line(1) = {1, 2};
Line(2) = {2, 6};
Line(3) = {6, 5};
Line(4) = {5, 1};
Line(5) = {5, 8};
Line(6) = {8, 4};
Line(7) = {4, 1};
Line(8) = {8, 7};
Line(9) = {7, 3};
Line(10) = {3, 4};
Line(11) = {6, 7};
Line(12) = {3, 2};
Line Loop(1) = {4, -7, -6, -5};
Plane Surface(1) = {1};
Line Loop(2) = {2, 11, 9, 12};
Plane Surface(2) = {2};
Line Loop(3) = {3, 5, 8, -11};
Plane Surface(3) = {3};
Line Loop(4) = {10, 7, 1, -12};
Plane Surface(4) = {4};
Line Loop(5) = {9, 10, -6, 8};
Plane Surface(5) = {5};
Line Loop(6) = {3, 4, 1, 2};
Plane Surface(6) = {6};
Surface Loop(1) = {4, 5, 2, 6, 3, 1};
Volume(1) = {1};
Physical Surface(1) = {6};
Physical Surface(2) = {4, 2, 3, 1};
Physical Surface(3) = {5};
Physical Volume(4) = {1};
ReorientMesh Volume {1};
